import Vue from 'vue'
import axios from 'axios'
import VueAxios from 'vue-axios'

import router from './router'
import store from './store'
import App from './App.vue'

// import env from './env.js'

// mock开关
const mock = false;
if (mock) {
    require('./mock/api')
}

// 根据前端的跨域方式做调整
axios.defaults.baseURL = '/api';
// axios.defaults.baseURL = 'https://www.fastmock.site/mock/76034672388e9646a80bb39f7445ed8b/api';

// 超时
axios.defaults.timeout = 8000

// 根据环境变量获取不同的请求地址
// axios.defaults.baseURL = 'env.baseURL';


// 设置请求拦截
// axios.interceptors.request.use(function(config) {
//     config.headers.Authorization = token
//     return config;
// }, function(error) {
//     return Promise.reject(error);
// });



// 设置响应拦截（接口错误拦截）
axios.interceptors.response.use(function(response) {
    let ret = response.data;
    if (ret.status == 0) {
        // 0表示成功
        return ret.data;
    } else if (ret.status == 10) {
        // 10表示未登录
        window.location.href = '/#/login'
    } else {
        // 报错了
        alert(ret.msg)
    }
})

Vue.use(VueAxios, axios)

// productionTip 生产环境下的提示
Vue.config.productionTip = false

new Vue({
    router,
    store,
    render: h => h(App)
}).$mount('#app')